package cn.fl.riskctrl.corp.transform;

import java.util.ArrayList;
import java.util.List;

import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.riskctrl.corp.vo.RcWlTpMgtVO;
import rc.corpbaseinfo.facade.corpbaseinfo.dto.RcWlTpMgtDTO;


/**
 * @Description: RC_WL_TP_MGT（物流小秘税开管理） 转换器
 * @Description: VO是客户端传递数据到服务端进行转换的数据 
 * @Description: VO转换数据变成DTO传递到服务端 
 * @Description: VO不能在服务端出现
 */
public class RcWlTpMgtVOTransform {


	/**
	 * DTO 转  VO
	 * @param po RcWlTpMgtDTO
	 * @return RcWlTpMgtVO
	 */
	public static RcWlTpMgtVO toVO(RcWlTpMgtDTO dto) {
		RcWlTpMgtVO  vo = null;
		if (dto != null) {
			vo = new RcWlTpMgtVO();
			vo.setId(dto.getId());
			vo.setRcCstCorpBscInfoId(dto.getRcCstCorpBscInfoId());//前置征信企业客户基础信息ID
			vo.setCorpCstNm(dto.getCorpCstNm());//客户名称
			vo.setCorpCertTypCd(dto.getCorpCertTypCd());//注册证件类型
			vo.setCorpCertNo(dto.getCorpCertNo());//注册证件号码
			vo.setRelatedNm(dto.getRelatedNm());//关联人姓名
			vo.setRelatedCertTypeCd(dto.getRelatedCertTypeCd());//关联人身份证类型
			vo.setRelatedCertNo(dto.getRelatedCertNo());//关联人身份证号
			vo.setInvoiTotalReve1to12(dto.getInvoiTotalReve1to12());//第一个月到第12个月的增值税开票总收入
			vo.setInvoiTotalReve1to24(dto.getInvoiTotalReve1to24());//第二个月到第24个月的增值税开票总收入
			vo.setEnterpriseLevel(dto.getEnterpriseLevel());//企业年限
			vo.setAudStsCd(dto.getAudStsCd());//审合状态
			vo.setAudStsDesc(dto.getAudStsDesc());//审合描述
			vo.setApplyTm(dto.getApplyTm());//申请时间
			vo.setOperationNm(dto.getOperationNm());//操作人
			vo.setOperationCd(dto.getOperationCd());//操作人工号
			vo.setRem(dto.getRem());//备注
			vo.setIsValid(dto.getIsValid());//是否有效
			vo.setIsDel(dto.getIsDel());//是否删除

			vo.setCrtTm(dto.getCrtTm());//创建时间
			vo.setCrtUsrId(dto.getCrtUsrId());//创建人
			vo.setMdfTm(dto.getMdfTm());//修改时间
			vo.setMdfUsrId(dto.getMdfUsrId());//修改人
		}
		return vo;
	}

	/**
	 * VO 转 DTO
	 * @param dto RcWlTpMgtVO
	 * @return RcWlTpMgtDTO
	 */
	public static RcWlTpMgtDTO toDTO(RcWlTpMgtVO vo) {
		RcWlTpMgtDTO dto = null;
		if (vo != null) {
			dto = new RcWlTpMgtDTO();
			dto.setId(vo.getId());
			dto.setRcCstCorpBscInfoId(vo.getRcCstCorpBscInfoId());//前置征信企业客户基础信息ID
			dto.setCorpCstNm(vo.getCorpCstNm());//客户名称
			dto.setCorpCertTypCd(vo.getCorpCertTypCd());//注册证件类型
			dto.setCorpCertNo(vo.getCorpCertNo());//注册证件号码
			dto.setRelatedNm(vo.getRelatedNm());//关联人姓名
			dto.setRelatedCertTypeCd(vo.getRelatedCertTypeCd());//关联人身份证类型
			dto.setRelatedCertNo(vo.getRelatedCertNo());//关联人身份证号
			dto.setInvoiTotalReve1to12(vo.getInvoiTotalReve1to12());//第一个月到第12个月的增值税开票总收入
			dto.setInvoiTotalReve1to24(vo.getInvoiTotalReve1to24());//第二个月到第24个月的增值税开票总收入
			dto.setEnterpriseLevel(vo.getEnterpriseLevel());//企业年限
			dto.setAudStsCd(vo.getAudStsCd());//审合状态
			dto.setAudStsDesc(vo.getAudStsDesc());//审合描述
			dto.setApplyTm(vo.getApplyTm());//申请时间
			dto.setOperationNm(vo.getOperationNm());//操作人
			dto.setOperationCd(vo.getOperationCd());//操作人工号
			dto.setRem(vo.getRem());//备注
			dto.setIsValid(vo.getIsValid());//是否有效
			dto.setIsDel(vo.getIsDel());//是否删除

			dto.setCrtTm(vo.getCrtTm());//创建时间
			dto.setCrtUsrId(vo.getCrtUsrId());//创建人
			dto.setMdfTm(vo.getMdfTm());//修改时间
			dto.setMdfUsrId(vo.getMdfUsrId());//修改人
		}
		return dto;
	}
	
	/**
	 * DTO集合 转 VO集合
	 * @param List<RcWlTpMgtDTO>
	 * @return List<RcWlTpMgtVO>
	 */
	public static List<RcWlTpMgtVO> toVOList(List<RcWlTpMgtDTO> list) {
		List<RcWlTpMgtVO>  voList = new ArrayList<RcWlTpMgtVO>();
		if(CollectionUtils.isNotEmpty(list)){
			for (RcWlTpMgtDTO dto : list) {
				voList.add(toVO(dto));
			}
		}
		return voList;
	}
	
	/**
	 * VO集合 转 DTO集合
	 * @param list List<RcWlTpMgtVO>
	 * @return List<RcWlTpMgtDTO>
	 */
	public static List<RcWlTpMgtDTO> toDTOList(List<RcWlTpMgtVO> list) {
		List<RcWlTpMgtDTO>  dtoList = new ArrayList<RcWlTpMgtDTO>();
		if(CollectionUtils.isNotEmpty(list)){
			for (RcWlTpMgtVO vo : list) {
				dtoList.add(toDTO(vo));
			}
		}
		return dtoList;
	}
}
